@mingoo/amotify
Version:
UI FW for React
132 lines (131 loc) • 7.23 kB
JavaScript
;
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.defaultConfig = exports.GenerateClassName = exports.ReadStyleSet = exports.DarkmodeColors = exports.ThemeColors = exports.SetThemeColorTag = exports.ColorObjects = exports.pageTransit = exports.useRecycle = exports.useStore = exports.deviceIdentifier = exports.deviceType = exports.browserType = exports.userAgent = exports.getInstance = exports.publicURI = exports.sessionUID = exports.ReactRouterDOM = exports.ReactDOM = exports.React = exports.$ = void 0;
const jsmin_1 = __importDefault(require("@mingoo/jsmin"));
exports.$ = jsmin_1.default;
const react_1 = __importDefault(require("react"));
exports.React = react_1.default;
const react_dom_1 = __importDefault(require("react-dom"));
exports.ReactDOM = react_dom_1.default;
const react_router_dom_1 = __importDefault(require("react-router-dom"));
exports.ReactRouterDOM = react_router_dom_1.default;
exports.sessionUID = jsmin_1.default.uuid.gen();
exports.publicURI = 'https://public.comun.jp/';
const getInstance = () => {
return useStore_1.useStore.get('instance-' + exports.sessionUID);
};
exports.getInstance = getInstance;
const userAgent_1 = require("./userAgent");
Object.defineProperty(exports, "userAgent", { enumerable: true, get: function () { return userAgent_1.userAgent; } });
Object.defineProperty(exports, "browserType", { enumerable: true, get: function () { return userAgent_1.browserType; } });
Object.defineProperty(exports, "deviceType", { enumerable: true, get: function () { return userAgent_1.deviceType; } });
Object.defineProperty(exports, "deviceIdentifier", { enumerable: true, get: function () { return userAgent_1.deviceIdentifier; } });
const useStore_1 = require("./useStore");
Object.defineProperty(exports, "useStore", { enumerable: true, get: function () { return useStore_1.useStore; } });
const useRecycle_1 = require("./useRecycle");
Object.defineProperty(exports, "useRecycle", { enumerable: true, get: function () { return useRecycle_1.useRecycle; } });
const pageTransit_1 = require("./pageTransit");
Object.defineProperty(exports, "pageTransit", { enumerable: true, get: function () { return pageTransit_1.pageTransit; } });
const color_1 = require("./color");
Object.defineProperty(exports, "ColorObjects", { enumerable: true, get: function () { return color_1.ColorObjects; } });
Object.defineProperty(exports, "SetThemeColorTag", { enumerable: true, get: function () { return color_1.SetThemeColorTag; } });
Object.defineProperty(exports, "ThemeColors", { enumerable: true, get: function () { return color_1.ThemeColors; } });
Object.defineProperty(exports, "DarkmodeColors", { enumerable: true, get: function () { return color_1.DarkmodeColors; } });
const GenerateClassName_1 = require("./GenerateClassName");
Object.defineProperty(exports, "ReadStyleSet", { enumerable: true, get: function () { return GenerateClassName_1.ReadStyleSet; } });
Object.defineProperty(exports, "GenerateClassName", { enumerable: true, get: function () { return GenerateClassName_1.GenerateClassName; } });
exports.defaultConfig = {
sessionUID: exports.sessionUID,
appRootID: 'root_' + exports.sessionUID,
appRoot: null,
darkMode: 'light',
themeColor: 'comun',
roundness: 2,
device: (0, userAgent_1.deviceIdentifier)(),
update: {
themeColor: (value) => {
if (!color_1.ColorObjects.find((ColorObject) => ColorObject.key == value))
value = 'comun';
if (value == (0, exports.getInstance)().config.themeColor)
return;
(0, exports.getInstance)().config.themeColor = value;
let body = (0, jsmin_1.default)(document.body);
body
.removeClass(body.findClass(/^bdsTC/))
.addClass('bdsTC_' + value)
.callback(() => {
(0, color_1.SetThemeColorTag)();
});
(0, exports.getInstance)().global.useRecycle.do('RootViewController');
},
darkMode: (value) => {
if (!['light', 'dark', 'dim', 'auto'].includes(value))
value = 'light';
if (value == (0, exports.getInstance)().config.darkMode)
return;
let Value = value == 'auto'
? (0, userAgent_1.deviceIdentifier)().isSystemDarkmode()
? 'dark'
: 'light'
: value;
(0, exports.getInstance)().config.darkMode = value;
let body = (0, jsmin_1.default)('body');
body
.removeClass(body.findClass(/^bdsDM/))
.addClass('bdsDM_' + Value);
(0, exports.getInstance)().global.useRecycle.do('RootViewController');
},
roundness: (value) => {
if (!(value >= 0 && value <= 5))
value = 2;
if (value == (0, exports.getInstance)().config.roundness)
return;
(0, exports.getInstance)().config.roundness = value;
(0, exports.getInstance)().global.useRecycle.do('RootViewController');
},
},
readExtraCDN: (key) => __awaiter(void 0, void 0, void 0, function* () {
let url = key;
let valid = false;
if (url) {
yield jsmin_1.default.CDNReader(url);
console.log('Read extraCdn : ' + key);
valid = true;
}
return valid;
}),
variables: {
themeColors: color_1.ThemeColors,
darkmodeColors: color_1.DarkmodeColors
}
};
(0, jsmin_1.default)('body').addClass([
'usrDevice_' + (0, userAgent_1.deviceIdentifier)().deviceIs,
'bdsDM_' + exports.defaultConfig.darkMode,
'bdsTC_' + exports.defaultConfig.themeColor
]);
(0, jsmin_1.default)(window).addEvent({
eventType: 'load',
callback: () => {
let style = document.body.style;
let Body = (0, jsmin_1.default)(document.body);
let topNavHeight = Number(Body.getStyleProperty('--topNavHeight').removeLetters() || 0);
let footerNavHeight = Number(Body.getStyleProperty('--footerNavHeight').removeLetters() || 0);
let viewHeight = window.innerHeight;
let contentHeight = viewHeight - topNavHeight - footerNavHeight;
style.setProperty('--viewHeight', window.innerHeight + 'px');
style.setProperty('--contentHeight', contentHeight + 'px');
}
});